package org.web.tablesqlcheck.server.domain.query;

import java.util.Date;
import java.util.List;
import lombok.Getter;
import lombok.Setter;
import org.web.base.domain.QueryBase;

@Setter
@Getter
public class QueryTableDefinitionRule extends QueryBase {


	/**
	 * Exact query by tableDefinitionRuleId, The meaning of 'tableDefinitionRuleId' is 主键，table_definition_rule表的主键。
	 */
	private Long tableDefinitionRuleId;

	/**
	 * In query by tableDefinitionRuleId, The meaning of 'tableDefinitionRuleId' is 主键，table_definition_rule表的主键。
	 */
	private List < Long > tableDefinitionRuleIdList;

	/**
	 * Exact query by ruleName, The meaning of 'ruleName' is 规则名称，规则名称，具有逻辑唯一性。
	 */
	private String ruleName;

	/**
	 * In query by ruleName, The meaning of 'ruleName' is 规则名称，规则名称，具有逻辑唯一性。
	 */
	private List < String > ruleNameList;

	/**
	 * Exact query by ruleStatus, The meaning of 'ruleStatus' is 状态，ON生效,OFF失效。
	 */
	private String ruleStatus;

	/**
	 * In query by ruleStatus, The meaning of 'ruleStatus' is 状态，ON生效,OFF失效。
	 */
	private List < String > ruleStatusList;

	/**
	 * Exact query by funtionCheck, The meaning of 'funtionCheck' is 规则参数，不同规则的参数。
	 */
	private String funtionCheck;

	/**
	 * Exact query by ruleType, The meaning of 'ruleType' is 规则类型，根据类型查找解析类。
	 */
	private String ruleType;

	/**
	 * Exact query by severityLevel, The meaning of 'severityLevel' is 严重级别，3表示禁止PROHIBIT，2表示警告WARN，1表示一般INFO。
	 */
	private Short severityLevel;

	/**
	 * Greater than severityLevel query, The meaning of 'severityLevel' is 严重级别，3表示禁止PROHIBIT，2表示警告WARN，1表示一般INFO。
	 */
	private Short moreThanSeverityLevel;

	/**
	 * Less than severityLevel query, The meaning of 'severityLevel' is 严重级别，3表示禁止PROHIBIT，2表示警告WARN，1表示一般INFO。
	 */
	private Short lessThanSeverityLevel;

	/**
	 * Greater and equal than severityLevel query, The meaning of 'severityLevel' is 严重级别，3表示禁止PROHIBIT，2表示警告WARN，1表示一般INFO。
	 */
	private Short equalAndMoreThanSeverityLevel;

	/**
	 * Less and equal than severityLevel query, The meaning of 'severityLevel' is 严重级别，3表示禁止PROHIBIT，2表示警告WARN，1表示一般INFO。
	 */
	private Short equalAndLessThanSeverityLevel;

	/**
	 * In query by severityLevel, The meaning of 'severityLevel' is 严重级别，3表示禁止PROHIBIT，2表示警告WARN，1表示一般INFO。
	 */
	private List < Short > severityLevelList;

	/**
	 * Exact query by isDelete, The meaning of 'isDelete' is 删除，记录是否逻辑删除，Y表示逻辑删除，N表示没有删除。
	 */
	private String isDelete;
}
